#! python3
# 使用tqdm模块创建进度条

from random import random, randint
from tqdm import tqdm, trange
import time

# 迭代对象处理
# for i in trange(100):
#     time.sleep(0.1)
#     pass

# 观察处理的数据
# pBar = tqdm(["a", "b", "c", "d"])
# for c in pBar:
#     time.sleep(1)
#     pBar.set_description("Processing %s" % c)

# 手动设置处理的进度
# pBar = tqdm(total=100)  # total参数设置进度条的总长度
# for i in range(100):
#     time.sleep(0.05)
#     pBar.update(1)  # 每次更新进度条的长度
# pBar.close()  # 关闭占用的资源

# 自定义进度条显示信息
with trange(100) as t:
    for i in t:
        t.set_description("GEN %i" % i)  # 设置进度条左边显示的信息
        t.set_postfix(  # 设置进度条右边显示的信息
            loss=random(),
            gen=randint(1, 999),
            str="h",
            lst=[1, 2]
        )
        time.sleep(0.1)
